import { Linking, Alert } from 'react-native'

export default class LinkingService {
    constructor() {

    }
    /**
     * @description: Deeplink 唤起监听 ( Open URL: mySchemes://... )
     */
    static addLinkListener() {
        /**
         * @description: 如果应用程序已经打开，应用程序就会出现在前台，并触发一个链接 'url' 事件 
         */
        Linking.addEventListener('url', (prop) => {
            Alert.alert('Hanlder with open URL: ', prop.url)
        })
        /**
         * @description: 如果应用程序还没有打开，它就会被打开，并将 url 作为 initialURL 传入 
         * 注: getInitialURL 在 debug 时返回 null. 关闭 debugger 以确保正常使用.
         */
        Linking.getInitialURL().then((url) => {
            if (url) {
                Alert.alert('Initial URL : ', url)
            }
        }).catch(() => {
            Alert.alert('Get initial url error')
        })
    }
}